Skip to content

add scripting fundamentals section (issue #26) - #30

Open
TropicalBanana2 wants to merge 1 commit into
AyuBloom:mainfrom
TropicalBanana2:claude/lucid-goodall-c4d502
Open

add scripting fundamentals section (issue #26)#30
TropicalBanana2 wants to merge 1 commit into
AyuBloom:mainfrom
TropicalBanana2:claude/lucid-goodall-c4d502

Conversation

@TropicalBanana2

Copy link
Copy Markdown

Fills the empty fundamentals overview and adds 11 new articles covering the full scripting foundation: script setup, the game object, network basics, RPC reference, entity/world state, timing, inputs, debugging, best practices, and common script features. Also wires all pages into the sidebar. Claude written reviewed by TropicalBanana aka Goonicks

Fills the empty fundamentals overview and adds 11 new articles covering
the full scripting foundation: script setup, the game object, network
basics, RPC reference, entity/world state, timing, inputs, debugging,
best practices, and common script features. Also wires all pages into
the sidebar.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The quality of the writing in this article is not up to standard. Many details are obvious to the average scripter, few are actually related to zombs. I suggest a complete rewrite, maybe keep a section about built-in game handlers.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The idea behind this article is good, but the way to approach the idea is wrong. This page should serve as a guide to what features of the game (e.g. what RPC does what, what entity update provides, etc) each script rely on, not just a demonstration of what each script does.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This isn't an article suitable for the Script Fundamentals page.


`game.world.entities` is a standard JavaScript `Map` containing every entity the client currently knows about. This includes players, zombies, buildings, resources (trees, stones), and neutral camps.

```js

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wrong, game.world.entities is an Object.


Zombies use their own model strings and have `entityClass === "Npc"`.

## Common filtering patterns

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unnecessary section.

if (t.uid === game.world.myUid) continue;
```

## Coordinate conversion

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unrelated section.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This article overlaps with the existing Engine documentation and shouldn't be added.

// Simple hint — appears briefly at the top of the screen
popup.showHint("message here");

// Typed toast — use "success", "error", "warning", or "info"

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is bogus. PopupOverlay does not contain a toast component.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

While useful, this article could be merged with the Input category in Engine/main. Having a seperate article will sever the connection between the Engine documentation and Scripting.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps suffers the same fate as input_ui.md, you can integrate this into Engine/World instead.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same problem with integration. Could be merged with Engine/Network instead.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I request a full human written article for this file edit.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm split about this article's position in the documentation. Perhaps it can be placed inside Engine/Network?

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This article is redundant. If anything, it is too short to be a standalone article, and should be incorporated into the Overview section.

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Once again, this article should be integrated into Engine/Network.

@AyuBloom AyuBloom left a comment

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for taking the time to open a PR. Just a suggestion: you should only open a PR for 1 or 2 articles at a time, such a large PR like this is hard to keep track of.

@AyuBloom AyuBloom linked an issue Jun 9, 2026 that may be closed by this pull request
@TropicalBanana2
TropicalBanana2 force-pushed the claude/lucid-goodall-c4d502 branch from 974738c to 02a5a91 Compare June 9, 2026 03:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Request] Script Foundations

2 participants